package 强化训练;

import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

public class day44单词倒排 {
    public static void main(String[] args) {
        Set<Character> wd = new HashSet();
        for(int i = 0 ;i < 26;i++){
            wd.add((char) ('A' + i));
        }
        for(int i = 0 ; i < 26;i++){
            wd.add((char) ('a' + i));
        }


        Scanner sc = new Scanner(System.in);
        String s = sc.nextLine();
        StringBuilder sb = new StringBuilder();

        //先划分成成子串，在逆序遍历
        int l = 0;
        int r = 0;
        for (l = s.length()-1,r = s.length()-1; l >= 0 && r >= 0;) {
            if (wd.contains(s.charAt(l))){//如果包含，那么就让i就--
                l--;
            }else {//如果不是字母
                sb.append(s.substring(l+1,r+1));
//                l = r;
                //并且sb的最后一个字符不是“ ”，那么就让sb拼接 “ ”，如果下一个还不包含，就继续让i--，r--
                if (!sb.substring(sb.length()-1, sb.length()).equals(" ")){
                    sb.append(" ");
                    l--;
                    r = l;
                }else {
                    //如果sb的第一个不是 “ ”
                    l--;
                    r = l;
                }
            }
        }
        if (l+1 == 0 && r != l){
            sb.append(s.substring(l+1,r+1));
        }

        System.out.println(sb);
    }
}
